﻿ 
Namespace Attributes
    <System.AttributeUsage(System.AttributeTargets.Property, AllowMultiple:=False, Inherited:=True), System.Serializable()> _
    Public Class MultiInputForeingClassMappingAttribute
        Inherits Attribute
        Implements IClassAttribute, IMappingClass
        Private _MappingClassName As String
        Public Property MappingClassName() As String
            Get
                Return _MappingClassName
            End Get
            Set(ByVal value As String)
                _MappingClassName = value
            End Set
        End Property

        Private _MappingPropertiesName As String()
        Public Property MappingPropertiesName() As String()
            Get
                Return _MappingPropertiesName
            End Get
            Set(ByVal value As String())
                _MappingPropertiesName = value
            End Set
        End Property
        Private _Label As String
        Public Property Label() As String
            Get
                Return _Label
            End Get
            Set(ByVal value As String)
                _Label = value
            End Set
        End Property
        Public Sub New(ByVal ClassName As String, ByVal Label As String, ByVal ParamArray OtherPropertyName As String())
            Me.MappingClassName = ClassName
            Me.MappingPropertiesName = OtherPropertyName
            Me.Label = Label
        End Sub

    End Class
End Namespace

